package com.whenjun.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.io.Serializable;
import java.time.LocalDateTime;
import java.time.LocalTime;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
 * <p>
 * 
 * </p>
 *
 * @author whenjun
 * @since 2024-02-28
 */
@ApiModel(value = "Kq对象", description = "")
@Data
public class Kq implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty("考勤数据id，yyyy-MM-dd_personId")
    @TableId(value = "id", type = IdType.ASSIGN_UUID)
    private String id;

    @ApiModelProperty("日期")
    private String date;

    @ApiModelProperty("人员id")
    private String personId;

    @ApiModelProperty("人员名称")
    private String personName;

    @ApiModelProperty("工号")
    private String jobNo;

    @ApiModelProperty("部门id")
    private String departmentId;

    @ApiModelProperty("部门名称")
    private String departmentName;

    @ApiModelProperty("班组id")
    private String departmentGroupId;

    @ApiModelProperty("班组名称")
    private String departmentGroupName;

    @ApiModelProperty("班组上班时间")
    private LocalTime departmentGroupShangbanTime;

    @ApiModelProperty("班组下班时间")
    private LocalTime departmentGroupXiabanTime;

    @ApiModelProperty("考勤状态编码")
    private String kqState;

    @ApiModelProperty("考勤状态名称")
    private String kqStateName;

    @ApiModelProperty("打卡上班次数")
    private Integer dakaShangbanNum;

    @ApiModelProperty("打卡下班次数")
    private Integer dakaXiabanNum;

    @ApiModelProperty("上班打卡时间")
    private LocalDateTime dakaShangbanTime;

    @ApiModelProperty("下班打卡时间")
    private LocalDateTime dakaXiabanTime;

    @ApiModelProperty("统计考勤总时长，单位秒")
    private Integer countKqTime;

    @ApiModelProperty("统计加班总时长，单位秒")
    private Integer jiabanTime;

    @ApiModelProperty("考勤日休息总时长，，单位秒")
    private Integer restSumTime;

    @ApiModelProperty("备注")
    private String remark;

    @ApiModelProperty("创建时间")
    private LocalDateTime createTime;

    @ApiModelProperty("更新时间")
    private LocalDateTime updateTime;

    @ApiModelProperty("更新人员")
    private String updateUser;

}
